home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Digital Warfare
/
MIS Press - Digital Warfare.iso
/
online
/
sirdoom
/
sirdoom.doc
< prev
next >
Wrap
Text File
|
1995-09-07
|
67KB
|
1,357 lines
SIRDOOM
A DOOM/Heretic Loader
for
Game Connection
Copyright (c) 1994-1995 by Sirius Software, Inc.
Finally, you can play DOOM, DOOM II, and Heretic with up to four
players per game via modem. SIRDOOM has a built in terminal that will
allow you to call your favorite Major BBS/Worldgroup system running
Game Connection (V1.40 or higher for DOOM, and V1.45 or higher for
Heretic) and play against a group of friends or acquaintances. While
there, check out the other multi-player games that are playable via
Game Connection.
SIRDOOM is a simple terminal program, and fairly self explanatory,
with a built in DOOM/Heretic loader that not only allows you to play up
to four way games, but also allows you to play without the need for
expensive modems and difficult modem configuration. It also allows
you to play a much smoother game than previously possible by optimizing
the data to reduce the volume. This front end has been tested
thoroughly with all versions of DOOM, DOOM II, and Heretic, up to V1.8.
DOOM versions less than V1.2 do not have modem capabilities, and will
not work with SIRDOOM.
Support for DOOM and Heretic were combined into this single program due
to the similarities in their operation, and to keep from cluttering
your system with more files. However, even though it is the same front
end, the communications of the two games are different, and require
separate game modes. Make sure you select DOOM mode for DOOM or
DOOM II, and HERETIC mode for Heretic. Game modes are explained a more
thoroughly in SIRGCONN.DOC, the user documentation for Game Connection
that should be available on your system.
Although SIRDOOM makes DOOM and Heretic play smoother and relaxes some
of the hardware needs, the game still requires high powered equipment
for smooth play. Please read the hardware considerations section
below.
QUICK START
This section will hopefully get you going quickly. Much of the
information contained here is repeated, and usually expounded upon,
later in this document. If you are unable to get started using this
section, please read the detailed sections below.
If the detailed information is not enough to get you started, look for
someone on the BBS you are calling that is experienced, or contact your
sysop. You are also welcome to post in the MajorNet forum for Game
Connection users if you have questions. If your system is not on
MajorNet, feel free to call our support system to access it. It is
called USGCONN there. The phone number is (307) 237-2112.
Every problem encountered to date, other than a general incompatability
between the game and a given computer, is explained and solved below.
An inability to get the game going is almost certainly due to either
not following the instructions, running a device driver or TSR that
conflicts with the game, or most likely, insufficient conventional
memory available for the game to load.
Slow and/or choppy games can be due to numerous factors, but can
normally be solved by configuring your modem properly if you have the
proper equipment.
Our voice tech support is reserved for paying customers. Under no
circumstances should you contact Sirius Software voice for tech support
on this front end unless you have purchased Game Connection. Those who
do own Game Connection, please be prepared to give the results of the
tests suggested below. There is very little that we can do to help you
outside of reading this document to you, or possibly interpreting
unexpected results of the suggested tests.
1. Unzip SIRDOOM.ZIP somewhere in your path, or in your DOOM or Heretic
directory. For more information on installation, see the following
section, 'Installing and Configuring SIRDOOM'.
2. Type SIRDOOM. You will be presented with the configuration editor,
where you will need to configure where the game is located, what com
port, baud rate, and init string to use.
You init string is very important. It configures your modem for
proper operation. Pressing F2 will bring up a selection list for
a number of popular modems. If you do not find your modem in this
list, try some of the default settings. If that does not work, you
may wish to forward a copy of your modems command set to your
system operator, who can submit it to us for addition to the list.
If you wish to configure your modem yourself, consult your modem
manual for the proper string to configure your modem for high speed
communications, with hardware (RTS/CTS) flow control ON, data
compression and error correction OFF, and lock the DTE speed (also
known as speed buffering).
WARNING: Do not assume that the init strings that are provided with
other DOOM loaders, such as those provided in MODEM.STR. SIRDOOM
is designed to be as efficient as possible, and does not have the
same requirements as most other front ends. Specifically, those
in MODEM.STR turn off hardware flow control, which is required for
effective high-speed communications.
3. Once you have selected a com port, SIRDOOM will report your UART
type. If this is anything besides 16550A, then you will also
receive a warning that DOOM and Heretic play may be slow or choppy
with this hardware. 16550A UARTs are recommended for these games.
For more information, see the section on UARTs.
If your UART is NOT a 16550A, then you should select the lowest baud
rate possible for the game you wish to play. This will lighten the
load on your system and improve your chances of having a smooth
game.
4. Dial a Major BBS or Worldgroup system and enter Game Connection's
multi-player channels. If you are the first one in, enter the name
of the game you plan to play, and select either DOOM or HERETIC
mode, depending on which game you wish to play.
5. If this is your first attempt to play these games, or you are trying
to configure your system for the best performance, always play
against a single opponent; preferably someone who is experienced at
playing and who has not experienced speed problems.
This is very important. These games will always slow to the rate of
the slowest player, so any problems experienced by any of the
players will affect all other players equally. Attempting to play
against other inexperienced players, or against more than one
opponent, makes it virtually impossible to identify the source of a
problem.
6. You are now ready to play. The first player to enter the channel
should now type START to begin game mode, and then Alt-S. Only one
person can type Alt-S, so either decide before hand who will do so,
or allow the channel moderator to start the game.
NOTE: The player who types Alt-S is called the GAME HOST. Options
such as deathmatch, skill level, episode and level, ticdup, etc.
will be set by this player. All other players' configurations for
these options will be ignored. See the section on manual
configuration for more detail on game options.
7. SIRDOOM will now locate the other players, and notify you of it's
progress. When all players are accounted for, the game host should
press ENTER to begin the game.
WARNING: All players MUST have selected the same game (i.e. DOOM,
DOOM II, or Heretic), and must be using the same version (e.g. V1.2,
V1.666, etc.). The game version can be found by running the game
solo and looking at the version number listed on the red banner at
the top of the screen as it comes up. If the games or versions are
not the same, some or all players will be kicked out of the game and
returned to teleconference as soon as the game host presses ENTER.
8. That's it. Enjoy your game. When you exit the game, you will be
returned to the Game Connection teleconference.
9. If you were not successful entering the game, or the game was slow
and/or choppy, don't feel bad. These games are not well suited for
online play, and require a very high powered system, that is
configured properly.
As stated above, the answer to your problem IS in this document.
See the 'TICDUP', 'Hardware Considerations', 'Software
Compatibility', and 'FAQ' sections of this document for more
details, and instructions for locating the source of the problem.
The FAQ section provides the quickest solutions, but may not be
enough to overcome some problems.
Getting the Best Game Possible
The default settings, primarily that of TICDUP, are selected to get
players started as quickly as possible. Smoother, faster games can be
acheived by fine tuning your system configuration. If you are familiar
with the operation and configuration of your system, have someone who
is willing to assist you, or are willing to put a little work into it,
you will be glad you did.
Playing DOOM, DOOM II, or Heretic via Game Connection is currently the
only way possible to meet or exceed the speed of IPX play without
sacrificing game smoothness (by using ticdup).
Installing and Configuring SIRDOOM
To operate SIRDOOM, simply unzip SIRDOOM.ZIP into either your DOOM or
Heretic directory, or preferably, somewhere in your path so you can
play any of the games without the need for multiple copies of SIRDOOM
floating around. Placing these files in your path will allow you to
type SIRDOOM from any path on your computer and select the game you
wish to play.
The first thing you will want to do after installing SIRDOOM will be to
configure SIRDOOM for your system. The configuration editor will
come up automatically the first time you run SIRDOOM, and can be
accessed at any time by typing Alt-C from within SIRDOOM.
This editor is fairly self explanatory. You are allowed to configure
the com port, baud rate, init and dial strings for your modem, create a
dialing directory of the systems you frequent, set up one or more paths
where DOOM or Heretic are located on your system, and select game
options. The 'Extra Args' field in the game options editor
allows you to specify additional arguments that the configuration
editor does not handle automatically, such as warping or external wad
files. To warp in DOOM, use "-devparm -warp <episode> <level>"; to do
so in DOOM II, use "-warp <level> <level>".
A note about external wad files: Each player must have the same wad
file, and each player must place -wad <filename> in their extra args.
This is not handled by the front end, or the game itself.
For information on overriding configuration options or using those not
supported by the configuration editor (e.g. overriding the interrupt
SIRDOOM uses to communicate with the game), see the section below on
manual configuration.
TICDUP
Ticdup allows you to set the factor to which command packets are
internally duplicated by DOOM or Heretic. By duplicating previous
command 'ticks', the games are able to send much less data, and allow
greater communications delays before becoming choppy. Values can range
from 1 (no tick duplication) to 5 (treat each command tick as four
ticks).
Only the player hosting the game (by pressing Alt-S) will be able to
set this value. The ticdup setting of all other players will be
ignored.
NOTE: This feature is only available with DOOM V1.6B or higher, DOOM
II, and version of Heretic from the summer of '95 or later. Using it
with lower versions of DOOM or Heretic will cause the game to kick one
or more of the players out with consistency failures, and the rest will
most likely be hung.
So now you are saying, "why not just set it to 5 for the lowest
possible data volume, and the least sensitivity to slow machines or
communications?"
There is a sacrifice to make for setting this option higher than 1.
That is, with a ticdup of 5, for example, since you are informing the
other players of your actions 1/5th as often, you must move five times
as far, and turn in five times as large of increments, in order to keep
up with the game. This will make your ability to aim, or approach an
object, far less accurate. Those of you who use a mouse will find the
game extremely difficult to play, and all players will find the game to
appear much jumpier. You will tend to overshoot doorways or ledges,
you will very likely have to make several attempts to hit switches, and
you will often have to strafe in order to aim your weapon at monsters
or other players.
This version of SIRDOOM defaults ticdup to 2 in order to allow new
players to begin playing quicker. A setting of 2 should allow for very
playable games.
For those of you who want the smoothest game possible, you will want
to set this to 1. If you are able to configure your system properly
to acheive a fast game with a setting of 1, you will be glad you did
so. You will then be able to play DOOM or Heretic via modem at speeds
that meet or exceed those of IPX play.
Anyone with a 486/66 or better, a 16550 UART, a local bus video
adaptor, and a properly configured modem, CAN acheive this goal. The
advanced, packet-level compression performed by SIRDOOM allows you to
play a four way game via 14.4K modems with a ticdup setting of 1. The
only barrier to this is that you need a high powered system, and you
must either be lucky enough to have a properly configured system from
the start, or you must understand your modem well enough to make the
proper adjustments.
The FAQ and nitty gritty sections of this document can help those who
are not as familiar with their system to overcome this barrier in most
instances. Again, if you really enjoy the game, you will be glad you
did. You also may be allowed into games with more experienced players
where you may not have otherwise.
Manual Configuration
The configuration editor will generate a file called SIRDOOM.CFG. This
is a simple text file that SIRDOOM reads to determine your
configuration. Some options are available that are not supported by
the configuration editor, because they are not needed under normal
circumstances. If you wish to manually configure SIRDOOM, you can do
so by editing SIRDOOM.CFG with a text editor. The following is a list
of all of the available options, including those supported by the
configuration editor.
General Options
BAUD: <baud rate>
This is the baud rate you want to use for communicating with
the BBS. It can be set to any standard rate, but must be set
to at least 9600 for DOOM to operate, and at least 14400 for
four player Heretic.
This, and your com port, are the only required options. If
baud rate is not provided, SIRDOOM will take your current
UART speed, which in most cases is 2400.
NOTE: With versions of DOOM V1.6B or higher, 2400 bps play is
also possible, although much choppier than 9600 play. See
the TICDUP option for more details.
DIAL: <dial command prefix string>
This is the string that will be used to dial your modem when
you type Alt-D. This should normally be set to ATDT, but is
configurable so you can set it to what you like.
INIT: <modem init string>
SIRDOOM will send this string to your modem when you first
enter (if you are not already connected), and each time you
hit Alt-I. Note that unlike most terminal programs, SIRDOOM
does not send an init string if you are already connected.
This feature allows you to easily enter and exit the program
without having your init string sent to everyone on the
system when you re-enter.
HANGUP: <modem hangup string>
SIRDOOM will automatically drop DTR briefly in an attempt to
hang your modem up when Alt-H is pressed. If this does not
cause your modem to hang up (usually because your init string
includes &D0), you may need to specify a hangup string here.
INTR: <game interrupt override>
By default, SIRDOOM will attempt to locate an empty user
interrupt on it's own to use for communicating with DOOM. If
you run into a conflict, you may need to override the
interrupt used.
Example: INTR: 0x60
This will cause SIRDOOM to use the general purpose interrupt
60 hex for communications.
NUMBER: <default BBS phone number>
This field is only useful if you are not using the
configuration editor. It is the number that SIRDOOM will
dial when you press Alt-D, but is normally set by the
configuration editor's dialing directory selection.
PORT: <com port>
COM port to use to call the BBS. Set this to 1-4 for the com
port you will be using.
If you are using non-standard hardware, you can override the
port using the PORTADDR and IRQ options below.
PORTADDR: <hex port address>
If you are using non-standard hardware, you can override the
PORT option by specifying the hex address of the port that
you want to use with this option. If you do not understand
the use of this ability, then you most likely do not need to
use it.
If this option is used, you MUST also specify the IRQ to use
(see the next option).
IRQ: <interrupt number>
This option should not normally be used. It will allow you
to redirect the communications interrupt for non-standard com
ports. Currently only irq 2 through 7 are supported.
If this option is used, you MUST also use the PORTADDR option
to set the address of the port to use.
Example:
PORTADDR: 2F8
IRQ: 5
This would configure SIRDOOM to use the standard COM2
address, but instead of IRQ 3, it would use IRQ 5.
UART: <FIFO or NOFIFO>
This option allows you to override the automatic sensing of
UART type and stops the UART testing. If you use the FIFO
option, it will force the UART type to 16550A, and NOFIFO
will force it to 16450.
One possible use for this option would be if you have
non-16550 UARTs, and don't plan to upgrade, but do not want
the warning text to appear each time you enter SIRDOOM.
The other use would be to force SIRDOOM to work with your
UARTs even if they fail some of the tests. Each warning that
SIRDOOM or COMTEST return is an indication that something is
non-standard or malfunctioning with your UART. This problem
may or may not be detrimental to the smooth operation of
DOOM, but chances are, it will be.
ARGS: <argument list>
These are the command line arguments for DOOM. Unless you
host the game, any selections you make for skill level,
episode, warping, deathmatch, etc. will be overridden by the
host player. If you wish to pass player specific arguments
to DOOM, you can specify them on this line. For a complete
list of arguments available, consult your documentation or
the DOOM FAQ.
The most common player arguments are:
-file <wad file>
Load an external wad file.
-turbo <1-255>
For DOOM V1.666+, DOOM II, and Heretic, this argument
will increase you character's normal walking speed. 255
is the same as running.
PATH: <doom path>
This allows you to set SIRDOOM up in a path other than where
DOOM is located. For instance, if you are running the CD-ROM
version of DOOM, you will need to use this option to tell
SIRDOOM where DOOM is located. This option is filled in by
the configuration editor when you select from your list of
paths/games.
NOTIFY: ON|OFF|<delay>
This option allows you to tell SIRDOOM whether or not to
notify you if a user enters your game channel while you are
playing, and if so, how often to allow notifications. It
assumes that the system you are playing on has the capability
of sending these notifications and that the sysop has
configured Game Connection to allow users to enter the
channel while a game is in progress.
NOTIFY: OFF
Will not disturb your game when someone enters the
channel.
NOTIFY: ON
Will notify you each time someone enters the channel.
NOTIFY: 15
Will notify you when someone enters the channel, but
will ignore users entering if they enter less than 15
seconds apart. This is the default setting for SIRDOOM
to allow you to be notified, but to stop someone from
forcing you out of a game by constantly re-entering your
channel.
BEEP: <duration>
If you are allowing notifications when users enter the
channel, this option will allow you to customize the
notification beep by extending or reducing its duration. The
default is 4, and valid values are from 0 to 100. 0,
however, will not generate a notification beep.
FREQ1: <frequency>
FREQ2: <frequency>
FREQ3: <frequency>
If you are allowing notifications when users enter the
channel, these options will allow you to customize the
notification beep by changing the frequencies. There are
three different frequencies, with delays between them. The
default values are 300, 500, 300. The original version
with the notification capabilities used 700, 1000, 700, but
that sounded too much like the game sound effects. If you
are not happy with the notification tone, feel free to play
with these options. Valid values are from 0 to 65535, but
you won't be able to hear much higher than 11000 Hz, or lower
than 20 Hz. If you want a headache, try setting BEEP high
and setting all frequencies to 11000 Hz. Your dog should let
you know, then, when someone enters the channel.
Host (Master) Options
The player starting the game (by typing Alt-S from terminal mode)
is the game host. This player has additional options available to
determine communications methods and game settings. You may wish
to configure these so that you can host a game, even if you are
not the chosen host. All values have defaults, so no arguments
have to be specified.
ARGS: <argument list>
These are the command line arguments for DOOM. The main
options are (most of these are automatically handled by the
configuration editor):
-skill <skill level>
Game difficulty from 1 to 5.
-episode <episode number>
Game episode (for registered owners) from 1 to 3.
-deathmatch
Non-cooperative play.
-altdeath
New version of deathmatch for V1.666 and DOOM II.
All weapons disappear when taken, and all items
come back after 30 seconds.
-warp <episode> <level>
Start at a location other than episode 1, level 1.
For all version other than V1.666 and DOOM II, you
will need to precede this argument with -devparm.
For DOOM II, there are 30 levels instead of 3
episodes of 9 levels each. In this case, use:
-warp <level> <level>
Try levels 31 and 32.
You will need to consult the DOOM or Heretic FAQ for a
complete list and explanation of the options.
EXTRA
For slow systems or networks, this option can be used to
smooth out play. The price for using this option is
almost twice the data volume. It will cause DOOM to send
extra information in each packet, so that resends do not
happen quite as often. (See the discussion on baud rates and
data volume below).
We do not suggest that you use this option when trying to
speed up the game via direct modem connections, as these
slowdowns are usually due to communications problems, and the
additional data volume may make matters worse.
TICDUP: <tick duplication factor>
Set the command 'tick' duplication factor. See the section
on TICDUP for details.
X25
This option is for players on X.25 networks or line oriented
networks (such as some telnet connections). It will reduce
network delays on networks that wait for a line terminator
before sending a packet. Since delays are extremely
detrimental to DOOM play, the tradeoff of higher data volume
is a good one.
Hardware Considerations
DOOM and Heretic require pretty high horsepower from your computer and
modem. When playing multi-player games, the slowest player will
dictate the smoothness and speed of the game for all players. A 386 or
better is required, and a 486 with a local bus video card is best.
Heretic has a little higher data volume, and will be a little more
difficult to get going than DOOM, so you should probably get DOOM
working properly first.
Modems:
Your modem must be at least 9600 for normal play (14400 for
four player Heretic). The connect rates of the various players is not
important, so long as each is higher than 9600 (for 4-player DOOM games
using V1.2, and for 4-player Heretic, you will need to use 14.4K or
better). This is with SIRDOOM only! Other communications programs for
DOOM/Heretic require pretty closely matched connect rates for a smooth
game.
Since the total data volume (excluding the use of the EXTRA option by
the host) is less than 9600 for four players using V1.5B or higher,
data compression is not needed, and can even be detrimental. Our test
of SIRDOOM showed a 20% decrease in game speed when data compression
was enabled.
For the smoothest game, you will also want to disable error correction.
Most modems delay data transmission when error correction is enabled
enough to make the game run slower. This can be anywhere from barely
noticable, as with ZyXEL modems, to fairly severe choppiness. If you
experience line noise while in terminal mode (bursts of garbage
characters that you did not type, and the BBS did not send), you will
need to either wait for conditions to improve, call a different system,
or turn error correction on. The delays caused by correcting for line
noise, however, will probably make the game extremely choppy and slow.
You will need to enable hardware (RTS/CTS) flow control via your modem
init string if your modem is set to a speed higher than the connect
speed. (e.g. If your modem is set to 38400, but you connect at
14400, hardware flow control is essential.) See your modem
documentation for the proper commands. Again, this is not the same as
some other DOOM/Heretic loaders. Most require you to disable hardware
flow control, and support only 9600 bps. Without hardware flow control
enabled and supported, your game is apt to lose blocks of characters.
In order to allow SIRDOOM to hang up when you finish playing, you will
need to make sure your modem is configured to disconnect and return to
command modem when DTR is dropped. Many modems do not default to this
setting, and require the addition of &D2 to the init string.
Finally, your modem must lock the DTE speed once set (also known as
speed buffering). Most HS modems will do this by default. Some,
however, will switch to the connect speed when they connect to the BBS.
You will know when this occurs, because as soon as you connect, your
typing will turn to garbage, and nothing the BBS sends will be
readable.
UARTS:
Functional 16550 UARTs are highly suggested for DOOM/Heretic play. You
may be able to play without them, but the game will be slow and choppy.
What is a 16550 UART?
A UART (Universal Asynchronous Transmitter/Receiver) is the chip on your
computer or modem that allows it to send information to your modem. For
internal modems, it is built into the modem itself; for externals, it
is either on your motherboard, or an add-on com board. Prior to
Pentiums, I have never seen a computer with a 16550 UART built in, so
you will most likely have to buy an add-on card to get one. These
cards are fairly inexpensive ($25-$40 for 2 16550 com ports, game port
and parallel port.)
The difference between these and normal UARTs is that instead of having
one place for data to be sent or received, they have 16 byte buffers
for each. This allows communications programs to send 16 bytes at a
time instead of one, and receive up to 16 bytes at a time.
DOOM runs in protected mode; communications are done from "real" mode.
Protected mode allows a program to use extended memory, but does not
normally allow direct access to hardware. In order to communicate via
modem, DOOM must switch to real mode, and then back to protected mode.
Switching between modes (task switching) takes a fair amount of CPU
time. Functional 16550 UARTs allows a program to cut these task
switches by a factor of 2 to 16 and improves communications speed and
reliability, which in turn improves game smoothness.
If you do not have functional 16550 UARTs, you should set your baud
rate to 9600 or 14400. This will lighten the loading on your computer
created by communications, and will improve your chances of having a
smooth game.
NOTE: A 16450 UART with firmware fifo emulation is not a replacement
for a 16550. With a 16550, several characters can be transmitted and
received sequentially, without delay. With firmware fifo emulation, a
period of time is required between characters, which, although minute,
is enough to keep them from being of any use in this situation.
Software Compatibility
We have found that many TSRs and drivers are either not compatible with
the DOOM engine, or make the game run much slower. Disk caching
software, especially with write caching, will almost always cause a
problem. DOOM V1.2 often crashed when we had a cache running, where
V1.5B and higher seem to run fine, but much slower. The DOOM engine
also requires a large amount of extended memory in order to operate,
and will hang if that memory is not available. Caches consume that
memory and are likely to cause the game to hang.
Additionally, the more players in a game, the more memory required. If
three players that can each play a 2-way game successfully have
problems in a 3-way game, the problem is almost certainly insufficient
memory on one of the systems, although, flow control can also come into
play here due to the increased data volume.
Total system memory is not the only concern here. The DOOM engine
requires a good bit of conventional memory for network or modem play
also. You would be wise to unload as many TSRs and drivers as
possible. DOOM may refuse to load if there is not enough memory, or it
may load fine, but hang or play slowly if it conflicts with a TSR, or
doesn't have enough memory for operation after loading. For the best
performance, we suggest a clean boot with nothing loaded other than a
mouse driver.
FAQ (Frequently Asked Questions)
We have had very few reported problems that were not covered in the
following Q&A. If you have a problem running DOOM or Heretic with
SIRDOOM, knowing how your setup reacts in each of the following
areas before seeking assistance will greatly increase the odds of
someone being able to help you.
Q. No players respond to the host when Alt-S is pressed. All players
besides the host stay in teleconference.
A. Be certain that the channel moderator selected DOOM Mode (or
HERETIC mode if you are playing Heretic) and typed START. This is a
very low volume point in the communications, so hardware and
software capabilities are not usually an issue. For some reason,
the other players are not receiving the communications from the
host. Either the game mode is wrong, the channel is not in game
mode, the host's system is not sending, or the data is being lost or
corrupted before it gets from the host to the BBS. In this case,
the host player needs to go through the 'nitty gritty' section below
to determine the problem with his/her setup.
If the host is able to talk with the other players in teleconference,
then his/her system is indeed capable of transmitting, but is not
able to do so at high speed, or during game mode. Another possible
cause of this problem is that the host does not have a functional
16550 UART, but forced fifos on in the configuration file.
Q. Some of the players besides the host entered the game when Alt-S was
pressed, but one or more remained in teleconference.
A. The players that are not entering the game are having communications
problems. This problem may be due to a hardware or configuration
problem with a couple of channels on the BBS, but is more than
likely due to a problem on the affected players' systems. The data
is being sent to them, but their system is either not receiving it,
or it is being corrupted before SIRDOOM gets a look at it.
If these players were not having problems in the teleconference,
then their systems are apparently able to send and receive data, but
only as fast as a person types. Higher speed communications
are failing. The affected players should go through the 'nitty
gritty' section to determine their problem.
Q. Some or all players go into the game startup (where it lists opponent
names), but then return to teleconference when the host presses
ENTER.
A. Some error message is always displayed in these circumstances.
It may be that all players are not using the same game version.
Even if you are all playing DOOM II, for instance, you must all have
V1.666 or V1.7 or V1.7a, etc. This is the number that shows at the
top of the screen when you start DOOM/Heretic.
It may be "Error ## running DOOM". In this case, DOOM could not
load because there was not enough memory or something about your
system kept it from loading. A clean boot (explained below) will
normally cure this problem. (NOTE: Conventional memory is not the
same as total system memory. If the game runs fine in solo mode,
but not via SIRDOOM, the problem is almost certain to be due to
insufficient conventional memory. See the nitty gritty section
below for details.)
If it says "multiple hosts detected", then more than one person is
hitting Alt-S. Only one person should ever do this.
Q. The screen clears for all players, but some or all players sit there
at a blank screen and do not see progress messages from SIRDOOM.
A. Are you using a COMPAQ? Some people running COMPAQ computers have
reported this event. Further digging determined that the text was
being sent to their screen, but was not being shown to them. If
they simply pretended it was there, and proceded with the game, no
ill effects were encountered.
To accomplish this, if you are the host, wait for a minute or so and
then press ENTER. The game should begin shortly thereafter. Other
players should just hold tight until the host has started the game.
Q. Non-host players get to "Listening for network startup..." and go
no further, and host player gets to "Sending startup info..." and
stops. No one gets beyond this to a black screen or the game
opening screen. (With Heretic, this is a progress screen where it
is looking for other players.)
A. First, be patient. Until the slowest system has initialized its
refresh daemon, no one can begin the game. If you can confirm that
everyone in the game was at these prompts (i.e. not still
initializing), then the host player has a high speed communications
problem or a software conflict.
The host was able to communicate with everyone enough to get them
out of the teleconference, assign player numbers, and send the
initialization data from DOOM/Heretic. Also, the game had
sufficient memory to load and at least do the initial
communications. If the host is able to ESC back to teleconference
(you may have to hit ESC several times), then his/her system is
unable to handle high speed communications. Make sure your modem is
configured to use hardware flow control, and that you have a
complete serial cable if the modem is external (some serial cables
sacrifice the flow control lines in order to get by with fewer
wires.)
Another possibility is that the host's computer is not capable of
loading the game, either due to insufficient memory, either
conventional or extended, or a software conflict. A clean boot may
cure this problem in a hurry.
Q. Players get to black screen, but stay there.
A. Again, be patient. A slow machine or noisy connection may be taking
longer to initialize, or communicate with the other players.
If waiting fails, one or more of the players involved is not able to
communicate, does not have enough memory for the game to run, or has
an incompatibility problem. Refer to the hardware and software
considerations section for details, or try a clean boot.
If a clean boot does not work, then you may have a general
compatibility problem, a hardware flow control problem, or a UART
problem. Refer to the 'Nitty Gritty' section for possible
solutions.
Q. Game is playable, but slow and choppy.
A. There are many possibilities here. Our primary testing was done on
a BBS that was running nothing but Game Connection, and all players
had 486 computers with quality modems and UARTs, and local bus
video adapters. Since then, we have had reports of success with
20-30 simultaneous DOOM/Heretic players on a BBS that was far from
a dedicated game server.
Sysops: make sure you have 16550 UARTs. You may wish to run COMTEST
on your serial ports to test their functionality. Your system
polling rate and loading are also an issue here. If your polling
rate is too high, you have too many modems for your computer to
handle, or for some other reason your system is overloaded, it will
not be able to efficiently transport the data, and can cause the
game to play poorly. Also, try the Ymodem-g test, explained in the
'Nitty Gritty' section, to assure your system properly supports
hardware flow control.
Players: you can probably assume that the BBS is working properly
unless you are helping the sysop with initial setup. If any one of
the players has a slow computer, a bad connection, or a non-16550
UART, they will slow the game for everyone. Join a two-player game,
preferably with someone who has played a fast smooth game
previously, and follow these steps to isolate most slowdowns:
Be absolutely certain that you have data compression turned off. If
you have error correction on, try turning it off. With external
modems you can verify this easily by looking at the lights on the
modem and making sure the EC light is not on.
If SIRDOOM is reporting a non-16550 UART, or defective fifos, then
the odds of your playing a smooth game are low. The most important
thing to do is to use the lowest port speed possible (9600 or 14400)
to keep from overloading your computer. If it says the fifos are
defective, you may want to try the "UART:" option in SIRDOOM.CFG to
override the UART sensing, but don't be surprised if your game is
still poor, or even if that makes it unplayable. The UART tests are
entirely valid, even though some are merely a failure to follow the
National Semiconductor standards. The best solution here is to buy
an add-on card with 16550 UARTs.
Reduce your video resolution to a minimum, and use the '-' (minus)
key to reduce your window size, during a game. If the game speeds
up, then your video card is too slow for the game, and you will have
to either leave your window small or buy a local bus video adapter.
Next, try a Ymodem-g upload and download from the BBS at high speed
(preferably a text file), with your standard communications program
(e.g. Telix or Procomm). Make sure error correction is on for
this test. If either of these transfers fail, either your UART is
losing characters at high speed, your modem is not configured to use
hardware flow control, or your serial cable does not have the proper
wiring for hardware flow control. Hardware flow control is
essential for the proper operation of this program. If this is your
problem, then you need to double check your modem configuration to
make sure flow control is enabled. If it is, then you have a
hardware problem to overcome before you will be able to play a
smooth game.
If you are using sound, turn it off. Some computers slow down when
they use the sound drivers. If your game speeds up, you will either
have to sacrifice the sound effects, or get a faster computer.
The TICDUP option, explained above, reduces data volume and relaxes
some of the timing demands made by these games. If you are playing
DOOM V1.6B or higher, DOOM II, or a recent version of Heretic, you
can play around with this option to see how it affects your game.
While this method simply masks the symptoms instead of correcting
them, it may be a worthwhile alternative to spending a lot of time
hunting for a solution.
Finally, you can tell a lot by watching the TxD and RxD lights on an
external modem. For proper play, both lights should flicker with a
constant intensity. If your TxD light is going dark occasionally,
and then very bright, your modem is sending in bursts, which will
cause the game to be choppy. This can be caused by data
compression, line noise, error correction (with some modems) or a
low quality modem/com board. If your RxD light is doing this, then
someone else in the game or the BBS is causing the choppiness (This
can be due to your using error correction or data compression,
though). See the 'Down to the Nitty Gritty' section for possible
solutions.
Q. During the game, one or more player is kicked out of the game due to
a consistency failure.
A. If you are playing an older version of Heretic, or a version of DOOM
less than V1.6B, then the game host most likely has used the TICDUP
option. This option is flawed with these versions, and should not be
used.
Other causes that I've seen are line noise (if error correction is
disabled), or slightly different versions or wad files. For
instance, if you play the shareware version of DOOM against the
registered version, and you select anything besides episode 1, you
will most likely get a consistency failure since the shareware
version does not have the additional episodes.
Q. Game freezes while playing.
A. I've known DOOM to occasionally freeze mid-game for no apparent
reason. If this happens consistently near the beginning of the
game, then your UART may not be holding interrupts long enough.
SIRDOOM attempts to compensate for this, but may, in some instances,
be unable to do so. If it happens only occasionally, write it off
as a quirk of the game and start over.
Also, if you are not using error correction, line noise can cause
the game to freeze. See the nitty gritty section for details.
NOTE: If any player hangs up or loses carrier without exiting the
game properly, everyone else in the game will hang momentarily.
I have patched the code to fake the game into thinking the player
exited normally, but it sometimes takes a bit. The only solution to
this is to find the guy that dropped out and either permanently
disable his call waiting, or give him an attitude adjustment.
Down to the Nitty Gritty
If you cannot successfully play a smooth game of DOOM/Heretic, then you
will need to do some controlled tests to find the source of your
problems. Unfortunately, due to the high demands of these games, the
solution may be anywhere from "disable your cache" to "you need a
better computer."
The first thing to keep in mind is that DOOM, DOOM II, and Heretic are
very playable modem-to-modem. Game Connection has been extensively
tested with multiple simultaneous 4-player games, and can easily rival
IPX play for two players and can even exceed the smoothness and
responsiveness of LAN play when three or four players are involved.
For those who have not successfully played DOOM/Heretic via Game
Connection, or who are not happy with the response, you should do all
initial testing with a single opponent that has been successful. Since
the weakest player will dictate the game response, it is not wise to
make your first attempt with more than two players, or against another
untested system. Playing with someone who has been successful
eliminates their hardware, software, and configuration from the
possible problems, and will allow you to determine the source much more
easily.
At the risk of sounding rude, I will repeat the previous bit of advice.
We have received far too many calls from people stating, "but I have a
P133 with 64M or RAM and a 64bit PCI video accelerator." If you take
that machine and pit it against a 486/33, your game speed will be set
by the other machine, not yours. If you have more than two players in
the game, there are too many variables to effectively track down the
problem.
BTW, if you can play fine in a two player game against Joe or against
Sue, but when you all three try to play, the game becomes choppy, the
most likely cause is that one of the machines is just barely capable of
handling the demands of the game. Adding the third player then causes
that machine to fall behind and ruin the game for everyone. Your best
bet in these situations is to take turns decreasing your video
resolution, and shrinking the window to as small as it will go to find
out whose machine is slowing the game.
Also, until you know what the problem is, you should always clean boot.
(You can do this by holding F5 after a reboot for DOS V6+.) Do not
load ANY TSRs or device drivers that are not essential for the
operation of your computer. This should remove driver conflicts and
insufficient memory problems (assuming you have enough memory
installed) from the list of possible causes.
Even if you don't think that insufficient memory is your problem, try a
clean boot to be sure. Especially if the game plays fine solo, but
locks up when played via SIRDOOM. SIRDOOM operates in conventional
memory (memory below 1M), and DOOM requires a large amount of
conventional memory in order to load. Even a system with 64M of memory
installed can be short on conventional memory.
OK, the first step is to test your system for overall DOOM/Heretic
compatibility by running the game solo. This will confirm your sound
card, video, and general hardware compatibility with the DOOM
graphics engine. If you cannot get the game to play in solo mode, you
will need to contact Id Software's tech support.
Then, try playing a modem-to-modem or serial game using the default
drivers. You can do this either through Game Connection, using
Distributed Mode, or by calling a friend directly. The communications
engine requires more memory (both conventional and extended) than solo
play, tests your computer's ability to quickly switch from protected
mode to real mode and back, and is much more demanding in the way of
system horse power. If you cannot get this to work, you will again
need to contact Id Software's tech support.
Next, call the system you will be playing on with your normal terminal
program (e.g. Telix, ProComm, etc.), using the same modem init string
you are using in SIRDOOM (if you have error correction disabled, you
will probably want to re-enable it for this test), and attempt a
Ymodem-g file upload and download at high speed. A fairly large text
file is best for this test. If either of these file transfers fail,
you either have a hardware or a configuration problem (or the BBS
does). Resolving this problem may be as simple as adding a command to
your modem init string to turn on error correction or hardware flow
control, or it may require a new modem cable or serial port board, or
it could be a problem with your hardware itself. Until you can do
these file transfers, you have no need to go further, because YOU WILL
NOT BE ABLE TO PLAY DOOM OR HERETIC EFFECTIVELY (If at all). I'm
sorry, but there is little help I can offer here. If you are certain
that your modem is configured to support hardware flow control, then
you need to try replacing your serial cable and/or UART. Many serial
cables sacrifice the hardware flow control lines in order to reduce the
number of wires needed. This is a problem with your computer, and
cannot be overcome by SIRDOOM.
Next, run SIRDOOM and call the BBS you will be playing on. If you
cannot get to game mode (where all players are advised to enter
Ctrl-Z's to exit) then your problem is most likely a configuration
error in SIRDOOM.CFG (baud rate, com port, etc.). This part of SIRDOOM
is a very simple terminal program that should present no problems.
If you enter game mode successfully, but do not get to the point where
all players have been accounted for and the host is asked to hit ENTER
to start the game, again, it is most likely due to a configuration
error. The only time we have ever seen this is when fifos were forced
on via SIRDOOM.CFG when they did not exist. Another problem that can
be encountered here is the video problem experienced by some COMPAQ
owners. See the Q&A section for an explanation.
Most problems will show up after DOOM/Heretic is launched. The first
thing you will see is a header from the game announcing the version,
etc, followed by several lines of text informing you of the progress of
the connection (Heretic uses a couple of boxes here). Before the game
attempts to use VGA, extended memory, or communications, it will go
through numerous steps, including initializing the refresh daemon,
checking for a mouse, checking for a GUS, etc. If you do not make it
to "Sending network startup..." for the host player or "Listening for
network startup..." for others, then you most likely have a software
conflict with the game, and should not have made it to this point. All
I can suggest is to see if you failed to remove all unneeded TSRs and
drivers.
If the game hangs at "Sending network startup..." for the host and
"Listening for network startup..." for the non-host player, ESC out and
have the non-host player host the game. If it hangs at the same point,
then neither player is capable of switching to protected mode or using
VGA graphics. This should not happen if all steps have been followed,
but in the event that you were unable to locate someone who had
successfully played, you may wish to ask around to find someone. The
blind rarely succeed at leading the blind.
More likely, it will get to a black screen for one or both of the
players. If only one players screen goes black, then communications
are working to this point, but one of the players is hanging when the
game attempts to go to protected mode or use VGA graphics. The culprit
is the one that does not make it to the black screen. That player
probably has insufficient memory for the game to load, or this problem
may also be caused by a conflict with a driver or TSR, or a
communications problem. If either player has an external modem, they
can check the RxD and TxD lights to see if they are both flickering
away. If they are not, then the system is most likely hung, and will
have to be rebooted. Try to free up some more memory or remove a few
more TSRs. If both lights are flickering, then the system is
apparently not able to handle high speed communications to any degree.
The best thing to do here is to go over your init string thoroughly, or
try different modems, serial port cards and serial cables. You must
have skipped the Ymodem-g test, or failed to do a clean boot.
If the game gets to a black screen both ways, then the problem is
almost certainly a communications problem on one of the systems. The
game has successfully loaded on both machines, but the data is not
getting passed between them once it kicks into high gear. If one
machine is known to work, then the other player must look into hardware
considerations. Again, there is no sense in continuing if the Ymodem-g
test failed, so you shouldn't have made it this far.
Now we get into the tough part. Most people will be able to
successfully enter the game; not being able to do so is a pretty good
indication that all steps were not followed. Your problems should now
be limited to either choppiness or freezes while playing the game. Let
me tackle the more serious problem of freezes first:
Consistent freezes have not been reported since SIRDOOM was
modified to compensate for UARTs that did not operate properly.
Try playing several times to make sure it is consistent (If not, your
problem may be the BBS you are playing on or just one of DOOM's
quirks.) If you do not have a 16550 UART, get one before continuing
your quest. It would be a shame to continue searching when the
solution is so easy and inexpensive.
It appears that some modems, or modem configurations, can cause
freezes, also, although as I mentioned, this problem has not been
reported for quite some time. If you can, borrow a different brand of
modem from someone to see if that solves your problems. Some modems
are not uniform in quality and cannot be depended upon. We have had
problem reports for almost every brand of modem priced under $200. One
brand that never seems to present a problem is ZyXEL.
You may wish to try adding a line with the word JUMP to SIRDOOM.CFG.
That may solve your freezes, but it will almost guarantee that the game
will be choppy. If this works, then something on your system is
keeping interrupts disabled too long, which is usually due to the
system being too slow, or your UART is not maintaining interrupts long
enough. You might want to try a different com board if you have an
external modem.
Game choppiness is the most common problem, and has the widest array of
causes of any problem encountered. The easiest problem to overcome is
video speed. If both players switch to low resolution video mode, and
reduce their window size to a minimum (by pressing '-'), this can be
removed from consideration, or shown to be the culprit. If the game
plays well at this point, you have shown the problem to lie in the rate
at which your system updates the video screens. You will need to play
with a smaller screen or get a faster computer and/or video card (local
bus video adapters with VGA accelerators are best).
If you are playing with a version of DOOM less than V1.666, then you
should not work too hard on reducing choppiness until you get a newer
version. V1.2 sends almost twice as much data as the other versions,
which can cause a slow game. You should be able to locate the
patch to upgrade this to the latest version fairly easily. V1.6B is
unstable, and sometimes plays choppy in solo mode. We have not seen
any such problems with V1.666+, DOOM II, or Heretic.
If you are using error correction, try disabling it and calling back.
Hang around for a while on the system to see if you are experiencing
any line noise. If your problem is a noisy line, you will not be able
to play a smooth game until the noise clears up or you call a system
where you do not see line noise. If you do not see line noise, go
ahead and attempt a game. In some cases, error correction itself can
cause the game to be sluggish. If that does the trick, then you will
either have to put up with the choppiness, leave error correction
disabled, or get a higher quality modem. Again, I want to warn you
that leaving error correction disabled may cause the game to abort if
line noise does occur.
If you are unsure of the response of the BBS you are playing on, try
playing on Phone Pole (307-234-5580). This system is guaranteed to
have the latest version of Game Connection, and has been thoroughly
tested. This will cost you a long distance phone call, but will remove
all BBS software and hardware from the possible problems. If this
solves your problems, then you will need to speak to your sysop about
possible alternatives. If it does not, try turning off error
correction again to see if your connection to our system is suffering
from line noise. If so, you may want to download the list of systems
running Game Connection from the GAMES library on our support system
(307) 237-2112, and try a couple of others. If there is no line noise,
try playing a game that way. If it is smooth, then you need to
speak to your sysop about his/her setup. If your game is still
slow, then we are back to hunting. Assuming all steps have been
faithfully followed, we have isolated the problem to a single system's
communications; yours.
I would imagine that only about 10% of the people that were having
problems are still having problems at this point. Solutions are
wearing pretty thin. We are now certain that your opponent is able to
play DOOM or Heretic successfully. We have eliminated the BBS, UARTs,
flow control (high speed Ymodem-g uploads will fail if you do not have
proper flow control), video speed and general incompatibilities.
Modem configuration is a key point now. Watch your TxD light
carefully while you play. If it is occasionally going dark, and then
bright, as opposed to flickering at a constant intensity, your modem
may still be using data compression, or it may be doing a poor job of
error correction, or you may be suffering from line noise. Be very
certain that you have data compression disabled, experiment with
disabling error correction, and try calling at different times to try
to avoid line noise. Without constant, steady communications, these
games will be choppy.
This is truly the nitty gritty point, as you appear to have a modem or
com board that is not up to par, or a system that is not fast enough
to handle the game. Be absolutely certain that you have followed all
steps, and that you have nothing loaded by CONFIG.SYS or AUTOEXEC.BAT
other than possibly a mouse driver. It would be a shame to dig into
hardware because you skipped a step. You should also be certain that
you do not have an interrupt conflict on your modem. In some cases,
such a conflict may go unnoticed until put to a vigorous test. You may
want to try switching your modem to a different com address. Many
times, a mouse will be set to COM1, and a modem to COM3 (or COM2 and
COM4), without redirecting one of the interrupts. This configuration
will not work. Both your mouse (if a serial mouse), and your modem use
interrupts to talk to software. COM1 and COM3 both use the same
interrupt, as do COM2 and COM4. If this is the case on your system,
move one of these to a different com port before continuing.
You are now left with trying different hardware. This can be an
expensive proposition unless you have a friend that will allow you to
swap temporarily. Trying your modem on a computer that has been
successful at playing a smooth game of DOOM or Heretic may eliminate or
prove your modem as the source of the problem. Alternatively, you
could try a modem (and serial cable if external) on your computer that
is known to work. If your modem is found to be the problem, I'm not
surprised. DOOM's communications engine is so demanding that a modem
otherwise fully functional can be detrimental. The only modems that I
have 100% faith in is ZyXEL. I'm sorry to keep harping on this, as I
know they are expensive, but this is the only company I know of that
has not sold out by opting for the low cost chip sets that are priced
as such due to low QA. With the others, you may buy one that works
wonderfully, and the next doesn't. In short, you really do get what
you pay for in modems. USR likewise has some spectacular modems, but
also has a line of cheapos called Sportsters.
Defective or malfunctioning com boards can also be a consideration. It
is fairly inexpensive to get a new com board with 16550s, so you may
want to try this first if you do not have the ability to easily swap
modems.
If you have made it this far and are still having problems, you may
want to try Empire Deluxe. You've removed all TSR's and drivers
from memory, gotten the latest version of the game, called long distance
to play a game, and changed your com board, serial cables and modem.
Go back to the beginning and try one more time, as the only remaining
solution is to try a different computer.
I should make one comment here: no one that we know of has made it to
this point if all steps were followed. In most cases, freezes are due
to software or hardware conflicts, or insufficient memory, and
choppiness is due to a slow computer or video card, non-16550 UARTs,
improperly configured modems or occasionally a low quality modem. If
you have followed each step to the letter and have not resolved your
problem, you may wish to pursue other games supported by Game
Connection. DOOM is but one of the supported games and is by far the
most demanding.
Data Rates
I will attempt to summarize the data rates presented by DOOM and
Heretic in this section based on the number of players. For the best
possible game, you should select the configuration with the highest
data volume supported by your connection (without data compression if
possible).
All suggested values are for maximum throughput without compression
where possible. The TICDUP option, explained above, can be used to
reduce data volume by a factor of 2 to 5. For slow connections, such
as X.25 or Internet, using TICDUP to lower the data volume can allow
you to use other options to increase game speed. The EXTRA option, for
instance, smooths the game play on slow networks. Keep in mind that
this option causes a large increase in data volume, so you should
discontinue its use if your three or four player games play worse than
two player games with the same opponents.
DOOM V1.2
V1.2 does not support TICDUP, so the only variables are the number of
players and the EXTRA option.
Two players can play without data compression at 9600 and EXTRA
can be used without compression at 14.4K. Three players can safely
play at 14.4K without compression if the EXTRA option is not used.
For four players, data compression must be used, and EXTRA should
not be used.
DOOM V1.5B
V1.5B does not support TICDUP.
Two or three players can play at 9600 with or without the EXTRA option,
and no need for data compression. For four players, the EXTRA option
should not be used for 9600 but should work for 14.4K.
Heretic
Versions of Heretic, V1.8 or lower, are unstable when TICDUP is
used. The EXTRA option can be used for all 14.4K or better two way
games, and should be safe for three way games. For four players, EXTRA
should not be used.
DOOM V1.6B, DOOM V1.666+, and DOOM II
With V1.6B and above, the EXTRA option can be used for all 9600 or
better two way games, and should be safe for three way games. For four
players, it may work, but is pushing the available bandwidth, so TICDUP
should be used to compensate.
TICDUP can be set from 1 (default) to 5. The higher the value, the
less effect a communications problem will have on your game, but you
may also lose movement and aiming accuracy. Feel free to experiment
with this option to see if you can get a better game. While it doesn't
correct any problems, it can make the effects of existing problems less
noticeable, and can be used to reduce the data volume so that EXTRA can
be used.
For 2400 bps play, you will always need to use the TICDUP option. For
two players, set this option to 2 or higher. Set it to at least 3 or 4
for three players, and 5 will just work for four players. Do not
use the EXTRA option for 2400 play. 2400 bps play will always be
choppy.
If you have additional question, please direct them to your sysop, or
post them in the MajorNet Game Connection Users forum if your system
carries it. We will be happy to field all questions from your sysops
and add any common problems to this list.
DOOM, DOOM II, Heretic, Telix, ProComm, Toyota, Worldgroup, and The
Major BBS are all trademarks of their respective owners.
SIRDOOM and Game Connection are trademarks of Sirius Software, Inc.